As networks such as the Internet have increased in size, demand for data streams (e.g., video) has increased to an extent that point-to-point communications of data streams have become inefficient. In an effort to improve efficiency, multicasting has become a useful technique for simultaneously delivering a data stream from a single source network node, such as a content server, to multiple end user network nodes.
Thus, multicasting is used in industry today to enable a network node to send a single packet or a data stream of information to multiple destination nodes in one transmission. The ability for a network node to send a single packet of information to multiple destinations is useful, but has limitations, such as scalability.